Scratch 3.0 を自分のパソコン上で動かす
注意
macOS でしか試していないので、Windows について書かれた部分は間違っているかも知れません
macOS と Windows 向けにしか書いていません。その他の OS を使っている場合は、どちらかというと macOS 向けの説明が参考になると思いますが、良かったらこのプロジェクトに参加してその他の OS も加えていただけると助かります まずは git というソフトをインストールします(無料です)
git は、このあと「3. リポジトリをクローンする」で Scratch のソースコードをダウンロードするために使います
次に Node.js というソフトをインストールします(これも無料です)
Node.js は、このあと「4. 必要なパッケージをインストールする」「5. 起動する」などで使います
Node.js のインストールは Windows と macOS どちらもインストーラを使います
https://gyazo.com/99c5d2918298aee0236b9de97b8495bd
ダウンロードのボタンが2つ出てくると思います
左側の 他のバージョンと書いてある方をクリックします※以前はLTSが紹介されていましたが、公式ヘルプはNode 8.x用なのでこちらも準拠します
開いたページの下の、バージョンの一覧を押します。
https://gyazo.com/798e6bce3374d2c105b0b84bf141e030
Node.js 8.xを選択し、画面から以下の指示通りに選びます。
node-v8.15.0-x86.msiがWindows用
node-v8.15.0.pkgがmacOS用
インストーラがダウンロードできたら、クリックしてインストールを開始します
利用規約に同意して、インストールを進めます
無事インストールが完了すれば、Node.js が使えるようになります!
3. リポジトリをクローンする
この章では「リポジトリ」と「クローン」という言葉が出てきます
リポジトリ:Scratch のソースコードは、GitHub(ギットハブ)というサイトに置いてあります。GitHub には沢山のソフトが置いてあり、それらの1つ1つは「リポジトリ」と呼ばれています(Scratch では「作品」と呼んでいますね)
クローン:Scratch を自分のパソコン上で実行するためには、Scratch のリポジトリをダウンロードする必要があります。リポジトリをダウンロードすることは「クローン」と呼ばれています(Scratch でいう「リミックス」ですね)
それでは、Scratch のリポジトリをクローンしましょう。まずは、1 でインストールした git を使います
Windows と macOS では起動するソフトが違うので注意しましょう!
Windows の場合:1 でインストールした Git Bash というソフトを起動します
macOS の場合:ターミナルを起動します
ここからは Windows と macOS ともに同じことをします
下の1行のコマンドをコピーして、先ほど起動したソフトに貼り付けます
code:リポジトリをクローンする
エンターキーを押して、コマンドを実行します。しばらく時間がかかるので、別の作業をして待ちましょう
ソフトに出てくる文字が止まって、文字を打つカーソルが出てくれば、完了です!
/icons/hr.icon
コラム
Scratch を作っているのはどこ?と聞かれたら、多くの人が「MIT Media Labだよ」と答えるかも知れませんが、正確には 「MIT Media Lab で発明された」というのが正しいです。今は、世界中の人たちが Scratch の開発に参加することができます
あなたが今 git clone コマンドを実行したことが、まさにその証拠です。あなたは Scratch を開発するために必要なソースコードを得たのです。これは、 Scratch でいうリミックスのボタンを押したようなものです
さて、ここで git push というコマンドを実行すると、 本物の Scratch のソースコードを書き換えることができます。でも、誰でもそんなことが出来たら Scratch を使う人が困りますよね?なので、そんなことは出来ないようになっています。 git push を使うことが許されているのは、世界でも限られたメンバーなのです (もしGitHubアカウントがあるならば、自分のリポジトリにアップロードすることができます。「git push URL変更」などで調べてみてください。)
更に、Scratch 3.0 を最初に作り始めた時から現在に到るまで、誰がどんなコードを書いたのか、全て git に記録されています。git clone はその記録をダウンロードするコマンドでもあります。つまり、世界中の人たちがその記録を見ることができるということです。それが監視の目になることで、悪意のあるソースコード(ウイルス)を組み込むことを難しくしています
4. 必要なパッケージをインストールする
この章では「パッケージ」という言葉が出てきます
パッケージ:ソフトを作るために必要なソースコードのこと。それだけでも動くが、他の開発者に使ってもらうことを前提に作られている。「使う側」か「使われる側」でいう「使われる側」(Scratch でいうと、ある機能だけを作った作品を公開しておいて、そのスクリプトをバックパックに入れるみたいなイメージ)
それでは、Scratch の実行に必要なパッケージをインストールしましょう。 3 で起動したソフトを引き続き使います
下の1行のコマンドをコピーして、先ほど起動したソフトに貼り付けます
code:必要なパッケージをインストールする
npm i
エンターキーを押して、コマンドを実行します。しばらく時間がかかるので、別の作業をして待ちましょう
iはinstallの省略形です。省略せずnpm installとしてもOKです。
ソフトに出てくる文字が止まって、文字を打つカーソルが出てくれば、完了です!
/icons/hr.icon
コラム
インストールが成功すると、次のようなメッセージが表示されます
added 1534 packages from 1131 contributors and audited 31333 packages in 61.129s
日本語に訳すと、Scratch を実行するために必要なパッケージを 1534 個追加しました、ということになります
パッケージも作品のひとつだと説明しました。そう考えると、 1534 個という数はとても多く感じられます
実は、Scratch 自体が必要としているパッケージの数は、せいぜい100個くらいしかありません(2019/1/14 by package.json) それ以外のパッケージは「パッケージを実行するために必要なパッケージ」や「パッケージを実行するために必要なパッケージを実行するために必要なパッ(以下略)」です
このように「〜を実行するために必要なもの」を、プログラミングの世界では dependency(デペンデンシー) と言います。日本語でいうと「依存(いぞん)」です。Scratch が依存しているパッケージの一覧は Dependency graph で見ることができます また、先ほどのメッセージには、それらのパッケージが合計 1131 人の人々によって作られたとも書いてあります。間接的とは言え、 1131 人もの人々が開発に関わっているなんて、すごいことですね
5. 起動する
いよいよ Scratch を起動しましょう。 3, 4 で起動したソフトを引き続き使います
下の1行のコマンドをコピーして、先ほど起動したソフトに貼り付けます
code:起動する
npm start -- --open
エンターキーを押して、コマンドを実行します。すると、自動的にブラウザが開きます。画面が表示されるまでしばらくかかるので、ブラウザを開いまま待ちましょう
Scratch の画面が表示されれば、完了です!
https://gyazo.com/11a4184ead1a14c013e17c50149bf169
あなたは今、自分のパソコン上に作られた Scratch を開いています。 Scratch のサイトにアクセスしている訳ではありません
Scratch の中身が気になる人は、次のコマンドを実行してソースコードを中を覗いてみましょう
code:フォルダを開く
open .
Windowsの場合は、explorer .が使えます。
( . まで必要です。間違えずにコピーしましょう)
TODO: VSCode のインストール、開発を始める
TODO: 開発に必要なツール群に軽く触れる